package org.jiuling.baidu.nlp.model;

/**
 * 地址模型
 * @author 紫灵
 * @date 2024年08月18日 17时56分58秒
 */
public class AddressModel {

    /** 请求唯一标识码 */
    private long logId;
    /** 原始输入的文本内容 */
    private String text;
    /** 省（直辖市/自治区） */
    private String province;
    /** 省国标code */
    private String provinceCode;
    /** 市 */
    private String city;
    /** 城市国标code */
    private String cityCode;
    /** 区（县） */
    private String county;
    /** 区县国标code */
    private String countyCode;
    /** 街道（乡/镇） */
    private String town;
    /** 街道/乡镇国标code */
    private String townCode;
    /** 姓名 */
    private String person;
    /** 详细地址 */
    private String detail;
    /** 电话号码 */
    private String phonenum;
    /** 纬度（百度坐标，仅供参考） */
    private double lat;
    /** 经度（百度坐标，仅供参考） */
    private double lng;

    @Override
    public String toString() {
        return "AddressModel{" +
                "logId=" + logId +
                ", text='" + text + '\'' +
                ", province='" + province + '\'' +
                ", provinceCode='" + provinceCode + '\'' +
                ", city='" + city + '\'' +
                ", cityCode='" + cityCode + '\'' +
                ", county='" + county + '\'' +
                ", countyCode='" + countyCode + '\'' +
                ", town='" + town + '\'' +
                ", townCode='" + townCode + '\'' +
                ", person='" + person + '\'' +
                ", detail='" + detail + '\'' +
                ", phonenum='" + phonenum + '\'' +
                ", lat=" + lat +
                ", lng=" + lng +
                '}';
    }

    public long getLogId() {
        return logId;
    }

    public void setLogId(long logId) {
        this.logId = logId;
    }

    public String getText() {
        return text;
    }

    public void setText(String text) {
        this.text = text;
    }

    public String getProvince() {
        return province;
    }

    public void setProvince(String province) {
        this.province = province;
    }

    public String getProvinceCode() {
        return provinceCode;
    }

    public void setProvinceCode(String provinceCode) {
        this.provinceCode = provinceCode;
    }

    public String getCity() {
        return city;
    }

    public void setCity(String city) {
        this.city = city;
    }

    public String getCityCode() {
        return cityCode;
    }

    public void setCityCode(String cityCode) {
        this.cityCode = cityCode;
    }

    public String getCounty() {
        return county;
    }

    public void setCounty(String county) {
        this.county = county;
    }

    public String getCountyCode() {
        return countyCode;
    }

    public void setCountyCode(String countyCode) {
        this.countyCode = countyCode;
    }

    public String getTown() {
        return town;
    }

    public void setTown(String town) {
        this.town = town;
    }

    public String getTownCode() {
        return townCode;
    }

    public void setTownCode(String townCode) {
        this.townCode = townCode;
    }

    public String getPerson() {
        return person;
    }

    public void setPerson(String person) {
        this.person = person;
    }

    public String getDetail() {
        return detail;
    }

    public void setDetail(String detail) {
        this.detail = detail;
    }

    public String getPhonenum() {
        return phonenum;
    }

    public void setPhonenum(String phonenum) {
        this.phonenum = phonenum;
    }

    public double getLat() {
        return lat;
    }

    public void setLat(double lat) {
        this.lat = lat;
    }

    public double getLng() {
        return lng;
    }

    public void setLng(double lng) {
        this.lng = lng;
    }

    public static Builder builder() {
        return new Builder();
    }

    public static class Builder {

        private AddressModel addressModel;
        public Builder() {
            this.addressModel = new AddressModel();
        }

        public Builder addLogId(long logId){
            this.addressModel.logId = logId;
            return this;
        }
        public Builder addText(String text){
            this.addressModel.text = text;
            return this;
        }
        public Builder addProvince(String province){
            this.addressModel.province = province;
            return this;
        }
        public Builder addProvinceCode(String provinceCode){
            this.addressModel.provinceCode = provinceCode;
            return this;
        }
        public Builder addCity(String city){
            this.addressModel.city = city;
            return this;
        }
        public Builder addCityCode(String cityCode){
            this.addressModel.cityCode = cityCode;
            return this;
        }
        public Builder addCounty(String county){
            this.addressModel.county = county;
            return this;
        }
        public Builder addCountyCode(String countyCode){
            this.addressModel.countyCode = countyCode;
            return this;
        }
        public Builder addTown(String town){
            this.addressModel.town = town;
            return this;
        }
        public Builder addTownCode(String townCode){
            this.addressModel.townCode = townCode;
            return this;
        }
        public Builder addPerson(String person){
            this.addressModel.person = person;
            return this;
        }
        public Builder addDetail(String detail){
            this.addressModel.detail = detail;
            return this;
        }
        public Builder addPhonenum(String phonenum){
            this.addressModel.phonenum = phonenum;
            return this;
        }
        public Builder addLat(double lat){
            this.addressModel.lat = lat;
            return this;
        }
        public Builder addLng(double lng){
            this.addressModel.lng = lng;
            return this;
        }

        public AddressModel build(){
            return this.addressModel;
        }

    }
}
